iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 28
1
Modern Web

30天學習Spring MVC系列 第 28

Day28 Spring Boot發佈篇-認識Docker(上)

  • 分享至 

  • xImage
  •  

前言

為什麼我要介紹Docker呢?將應用佈署在容器上是一件非常方便快速的事情,虛擬化的技術已經是好幾年前的事了,容器可以讓我們建置許多機器在上面運行,我們能很方便的去對每一個運行的機器做管理,也可以將他們帶著走,這是Docker非常棒的地方.
Docker是輕量級的容器,啟動的速度非常快,容器的啟動時間是秒級的,讓開發、測試、部署的時間變更快了。

認識Docker

哪尼? Docker是一隻鯨魚! ((大誤
這是Docker的商標Icon啦!!/images/emoticon/emoticon07.gif
個人覺得這個Icon真的好討喜,比起之前所看到的軟體Icon來說,讓我們繼續來介紹Docker吧~
https://ithelp.ithome.com.tw/upload/images/20180116/20107812bf4RQqRu7e.png

Docker VS 傳統的虛擬機器

https://ithelp.ithome.com.tw/upload/images/20180116/20107812UZHFocn1hh.png

https://ithelp.ithome.com.tw/upload/images/20180116/201078123vOAl19I1W.png

虛擬機上的應用多了個Guest OS,而Docker則是共用系統的kernel

圖片引用於:(http://www.bogotobogo.com/DevOps/Docker/Docker_Container_vs_Virtual_Machine.php )

Docker優點

  • 啟動速度秒級單位
  • 更快速交付和佈署
  • 更容易的帶著走
  • 更有效率虛擬化
  • 更簡單管理
  • 單一主機可同時執行數千個Docker容器

安裝步驟

1.到(https://docs.docker.com/toolbox/toolbox_install_windows/#step-3-verify-your-installation )尋找下載點按鈕

https://ithelp.ithome.com.tw/upload/images/20180116/20107812NAQhCvOp5p.png
圖1:下載按鈕
2.下載完成後,打開安裝執行檔案.exe,看到下圖就表示可以進行安裝

https://ithelp.ithome.com.tw/upload/images/20180116/20107812Ykxuik2g7n.png
圖2:安裝畫面
3.當安裝完成後執行Docker Quickstart Terminal圖示

https://ithelp.ithome.com.tw/upload/images/20180116/2010781202NRF3KKWq.png
圖3:執行檔位置
4.等待Docker做完初始化下載檔案->初始化->中途會要求你安裝一些軟體選擇是->當成功後會看到下圖

https://ithelp.ithome.com.tw/upload/images/20180116/20107812J3w8B3m381.png
圖4:初始化Docker

https://ithelp.ithome.com.tw/upload/images/20180116/20107812qsoVt9Cs66.png
圖5:安裝成功畫面

https://ithelp.ithome.com.tw/upload/images/20180118/20107812Tn27Y8CDVP.png
圖6:測試Docker是否能執行

安裝成功後,我們可以使用docker run hello-world來測試我們的容器是否能執行,成功畫面如上圖

https://ithelp.ithome.com.tw/upload/images/20180118/20107812jNl2HbWdlr.png
圖7:註冊Docker hub帳號

我們要下載鏡像與儲存庫的資源時要先註冊Docker hub的帳號,請到(https://hub.docker.com/ )做註冊動作

https://ithelp.ithome.com.tw/upload/images/20180118/20107812COD1DKhL8M.png
圖9:搜尋tomcat

啟動tomcat鏡像,進到tomcat儲存庫後先試試看下 docker run -it --rm tomcat:8.0 能不能啟動

https://ithelp.ithome.com.tw/upload/images/20180118/20107812VimfpvL3G4.png
圖10:啟動成功

如果成功下載並可執行會得到上圖

docker login

下完指令輸入您的帳號,及密碼後就能成功登入,要記得先去信箱做驗證
沒有權限下載鏡像,先進行登入Docker

https://ithelp.ithome.com.tw/upload/images/20180118/20107812UinU4A8zPj.png
圖11:pull下來的鏡像

使用docker images就可以看到我們下載下來的鏡像囉

https://ithelp.ithome.com.tw/upload/images/20180118/20107812xowDv6vXGC.png
圖12:成功啟動tomcat映射到我本地的port

試試這指令: docker run -it --rm -p 8080:8080 tomcat:8.0 ,瀏覽器要輸入docker的IP : 後加上port 8080

心得

1.我目前也還在學習Docker中,大部分都是靠著網路上的教學文章在做測試與驗證,如果你有需要什麼樣的OS的話,可能要自行上網去搜尋一下指令,我這邊只會運用到tomcat
2.Windows10與Windows7的軟體會些許不同,Windows10讓Docker管理變得更簡單且有圖示化了,但是我的電腦是Windows7會用Windows7做介紹
3.用虛擬化技術運行專案有個很大的優點,當這個機器掛了,我們可以將備份檔案馬上再掛載到另外一台上面,快速又安全,不然當你不小心把機器給炸了...要復原就
/images/emoticon/emoticon46.gif
4.無法連到Container的tomcat底下的參考資源可以解決您的問題,每個人的環境不一樣,你要去設定你的容器的network IP讓瀏覽器可以去連到Container的容器
5.當能連線到的時候我們就可以建個資料夾把war檔案放到裡面後叫docker幫我們發佈了!!!

參考資源

(https://docs.docker.com/toolbox/toolbox_install_windows/#step-3-verify-your-installation )

(https://www.tutorialspoint.com/docker/ )


上一篇
Day27 Spring Boot WebSocket 製作一個簡單的聊天室(下)
下一篇
Day29 Spring Boot發佈篇-認識tomcat(下)
系列文
30天學習Spring MVC30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言